package org.example.curriculum_design_6_16.service;

import org.example.curriculum_design_6_16.entity.pojo.IntellectualProperty;
import com.baomidou.mybatisplus.extension.service.IService;
import org.example.curriculum_design_6_16.entity.pojo.IpScoringRule;
import org.example.curriculum_design_6_16.entity.vo.IntellectualPropertyVo;
import org.example.curriculum_design_6_16.entity.vo.Result;

import java.util.List;

/**
* @author 郑凯
* @description 针对表【intellectual_property(知识产权记录表)】的数据库操作Service
* @createDate 2025-06-23 09:02:07
*/
public interface IntellectualPropertyService extends IService<IntellectualProperty> {
    int addIntellectualProperty(IntellectualProperty intellectualProperty);
    int updateIntellectualProperty(IntellectualProperty intellectualProperty);
    int deleteIntellectualProperty(Integer id);
    IntellectualPropertyVo getIntellectualPropertyById(Integer id);
    List<IntellectualPropertyVo> getIntellectualPropertiesByStudentId(String studentId);
    List<IntellectualPropertyVo> getAllIntellectualProperties();
    public Double getTotalScore(String studentId);
    
    /**
     * 获取学生在指定学年的知识产权总分
     * @param studentId 学生ID
     * @param academicYear 学年
     * @return 知识产权总分
     */
    Double getTotalScore(String studentId, String academicYear);
    
    List<String> getAllDistinctIpTypes();
}
